fait.dat <- read.csv("data/fait.txt")
implantation.dat <- read.csv("data/implantation.txt")
# on retire le num de ligne qui était passe en X
fait.dat <- subset(fait.dat, select = - X)
implantation.dat <- subset(implantation.dat, select = - X)
relation.dat <- fait.dat[fait.dat$caracNew == "Relations" ,] # on ne garde que les relations
relation <- relation.dat[relation.dat$modAgreg != "A",] # on enleve les doublons
relation <- subset(relation, select = c("idimplantation", "usual_name", "fklinked_implantation","linked_implantation_name")) # on ne garde que les noms et noms liées
# on drop les facteurs non pris en compte suite aux subset de relations
relation$usual_name <- factor(relation$usual_name)
relation$linked_implantation_name <- factor(relation$linked_implantation_name)
Dans un premier temps je ne vais travailler qu’avec les relations représentées par des couples noms d’implantations et noms d’implantations liées. Il s’agira par la suite de complexifier.
Cela recouvre 1370 relations directes car celles avec modAgreg == A ont été retirées (elles doublonnaient avec modAgreg == D). Il y a 305 implantations distinctes (idimplantation) qui sont liées à 1087 implantations liées distinctes (fklinked_implantation).
Le tableau 2.1 et le diagramme en baton 2.1 représentent le nombre de relations que l’on a pour chaque noms d’implantations distincts (idimplantation). Il y a deux implantations (Charroux, Saint-Sauveur et Cluny) qui possèdent 124 et 83 relations puis on obtient un second groupe d’implantations avec un nombre de relations contenues entre 38 et 20. Ensuite les nombre d’implantations possedant de moins en moins de relations va augmenter, presque exponentiellement pour culminer au groupe d’implantations ne possedant qu’une relation (155).
# un tableau avec les Id et les noms
idimplant_court <- subset(implantation.dat, select = c(idimplantation, usual_name))
implantation_relation <- relation %>%
group_by(idimplantation) %>% # on groupe par usual name
summarize(nb = n()) %>% # on compte par ce group
arrange(desc(nb)) %>% # on passe en decroissant
left_join(idimplant_court,by = "idimplantation") # ion rajoute le nom
# une bidouille pour avoir un titre de tableau avec ref
cat("<tableau>",paste0("<caption>", "(#tab:relationusualname)", ' Nombre de relations directes par idimplantation', "</caption>"),"</tableau>", sep ="\n")
DT::datatable(implantation_relation)
gg_implantation_relation <- ggplot(implantation_relation) +
geom_bar(aes(nb)) +
labs(x = "", y = "") +
theme_bw()
# c'est du js
f <- list(
family = "Courier New, monospace",
size = 18,
color = "#7f7f7f"
)
x <- list(
title = "Nombre de relations par idimplantation",
titlefont = f
)
y <- list(
title = "décompte",
titlefont = f
)
ggplotly(gg_implantation_relation) %>%
layout(xaxis = x, yaxis = y)
Figure 2.1: Diagramme en baton du nombre de relations directes par idimplantation
initmapview()
mapview::mapview(diocese.shp, color = "white", lwd = 1, # couleur et type du contour
col.regions = "grey", alpha = 0.5, # couleur du fond et type
layer.name = "Diocèses" ) +
mapview::mapview(implantation.shp, cex = 0.1, layer.name = "Implantations", col.regions = "black") +
mapview::mapview(implantation_relation.shp, cex = "nb", layer.name = "implantations avec relations")
## Warning in validateCoords(lng, lat, funcName): Data contains 18 rows with
## either missing or invalid lat/lon values and will be ignored